Packet data communication networks provide a convenient and economical means for delivering data between data endpoints. In certain instances, it is desirable to combine or mix data streams from different communication endpoints into a single data stream. For example, in connection with voice over internet protocol (VoIP) telephony applications, VoIP mixers can be used to enable conference calls between a number of endpoints. Packet data mixers are also useful in connection with improving the efficiency and capacity of communication networks by multiplexing individual packet data flows into aggregate flows. In particular, individual data streams can be bundled into a single aggregate flow for delivery between two subnetworks or mixers, reducing the total number of packets that must be handled by the communication network interconnecting the two mixers in delivering the data.
Although it is desirable to combine or mix data packets in such applications, the implementation of a data packet mixer generally introduces delays in the transmission of the data. In particular, where a number of communication endpoints provide data packets, a mixer must wait until each such data packet has arrived before an aggregated data packet can be formed and sent to a receiving communication endpoint. In a worst case scenario, an additional delay in the amount of half the packetization delay (i.e., the time period over which the mixer collects the data for aggregation into a single packet) is introduced. However, the introduction of such delays is undesirable, particularly in connection with voice telephony applications.